<?php 


	include("config.php");
    include(INCLUDEDIR."core.php");
	
	
	$tpl = new Sitio();
	$tpl->setPlantilla("tpl.publicaciones.html");
	$tpl->prepare();

	
	$id_persona = getIdPersona();
	$id_yo = $id_persona;

	$id_publicacion = isset($_GET['idp'])?intval($_GET['idp']):0;	
	if($_GET['accion']=="contactar") {
		if($id_persona==0) {
			redir("login.php?referer=".$_SERVER['REQUEST_URI'],"Debes iniciar sesi&oacute;n para ver los detalles de esta publicaci&oacute;n");	
		}
	}
	
	
	if($_POST['accion']=="responder") {
		$id_publicacion = intval($_POST['id_publicacion']);
		$id_pregunta = intval($_POST['id_pregunta']);
		$callback = "publicacion.php?idp=".$id_publicacion;
		$respuesta = isset($_POST['respuesta'])?sanitizar($_POST['respuesta']):"";
		if(empty($respuesta)) redir($callback,"Debe agregar una respuesta valida",true);
		if($id_pregunta==0) redir("index.php","No tiene acceso a esta pagina",true);
		$respuestas = db::GetRow("SELECT * FROM publicaciones_preguntas WHERE id_pregunta_padre = '$id_pregunta'");
		if(count($respuestas)>0) redir($callback, "Esta pregunta ha sido respondida anteriormente",true);
		$comentario = new genericDB("publicaciones_preguntas");
		$comentario->set("id_publicacion",$id_publicacion);
		$comentario->set("id_pregunta_padre",$id_pregunta);
		$comentario->set("id_persona",$id_yo);
		$comentario->set("comentario",$respuesta);
		$comentario->Save();
		redir($callback,"Respuesta actualizada");
	}	
	
	if($_POST['accion']=="comentar") {	
		$id_publicacion = isset($_POST['id_publicacion'])?intval($_POST['id_publicacion']):0;
		$comentario =  isset($_POST['comentario'])?sanitizar($_POST['comentario']):"";
		$callback = "publicacion.php?idp=".$id_publicacion;
		if(empty($comentario)) redir($callback,"Debe escribir una pregunta",true);
		if(!isOnline()) redir($callback,"Debe estar conectado",true);
		$coment = new genericDB("publicaciones_preguntas");
		$coment->set("id_publicacion",$id_publicacion);
		$coment->set("comentario",$comentario);
		$coment->set("id_persona",$id_persona);
		if(!$coment->Save()) redir($callback,"No se pudieron guardar los datos",true);
		redir($callback);
	}

	$publicacion = db::getRow("SELECT * FROM publicaciones WHERE id_publicacion = '$id_publicacion'");
	$id_persona_publicacion = 0;
	if(count($publicacion)>0) {
		$id_persona_publicacion = $publicacion['id_persona'];
	}
	
	$query = "	SELECT * FROM publicaciones 
				INNER JOIN personas ON personas.id_persona = publicaciones.id_persona
				WHERE id_publicacion = '$id_publicacion'
				";
	$mipublicacion = db::getRow($query);
	
	if(count($mipublicacion)==0) redir("main.php");
	$id_categoria = intval($mipublicacion['id_categoria']);


	$tpl->newBlock("DISPLAYPUBLICACION");
	$tpl->assign("mapacategoria",MapaCategoria($id_categoria,true,"index.php?c="));
	foreach($mipublicacion as $k => $v) $tpl->assign($k,$v);
	$tpl->assign("fecha_publicacion",db_a_fecha(substr($mipublicacion['fecha_creacion'],0,10)));	
	$tpl->assign("foto_profesor",getImagenPersona($mipublicacion['id_persona'],true, array("align" => "left")));
	
	
	$id_profesor = $mipublicacion['id_persona'];
	$rating = db::GetRow("SELECT * FROM rating_profesores WHERE id_persona = '$id_yo' AND id_profesor = '$id_profesor'");
	$id_voto = count($rating)>0?1:0;
	if($id_persona_publicacion==$id_yo) $id_voto=1;
	$tpl->assign("id_voto",$id_voto);
	
	
	$query = "		SELECT * FROM publicaciones_preguntas 
					INNER JOIN personas ON personas.id_persona = publicaciones_preguntas.id_persona
					WHERE publicaciones_preguntas.id_publicacion = '$id_publicacion'
					AND id_pregunta_padre = '0'
					ORDER BY publicaciones_preguntas.id_pregunta ASC";
					
					
	$result = mysql_query($query);
	if($result && mysql_num_rows($result)>0) {
		$tpl->newBlock("COMENTARIOS");
		while($row = mysql_fetch_assoc($result)) {			
			$tpl->newBlock("COMENTARIOITEM");
			$row['fecha_stamp'] = db_a_fechacompleta(substr($row['fecha_stamp'],0,10));
			$tpl->Render($row);
			$id_pregunta = $row['id_pregunta'];
			$query = "		SELECT * FROM publicaciones_preguntas 
							INNER JOIN personas ON personas.id_persona = publicaciones_preguntas.id_persona
							WHERE publicaciones_preguntas.id_pregunta_padre = '$id_pregunta'";
			$resp = db::getRow($query);
			if($row['id_persona']!=$id_yo) {
				if(count($resp)>0) {
					$tpl->newBlock("ITEMRESPUESTA");
					$resp['fecha_stamp'] = db_a_fechacompleta(substr($resp['fecha_stamp'],0,10));
					$tpl->Render($resp);					
				} else {				
					if($id_yo>0) {
						$tpl->newBlock("ITEMRESPONDER");
						$tpl->Render($row);	
					}
				}
			}			
		}
	}
	
	if(isOnline() && $id_yo>0) {
		$tpl->newBlock("ESCRIBIRCOMENTARIO");	
		$tpl->assign("id_publicacion",$id_publicacion);
	}
	

	$tpl->Mostrar();
?>